package com.mars.manager.user.service;

import com.mars.base.common.utils.web.ResponseResult;
import com.mars.base.service.IService;
import com.mars.manager.user.entity.User;

public interface UserService extends IService<User, Long> {
	
	/**
	 * 验证密码
	 * @param account 帐号（用户名/手机号码/邮箱地址）
	 * @param password 密码
	 * @return
	 */
	public boolean validatePassword(String password, String encPassword, String salt) ;
	
	/**
	 * 后台重置密码，密码为用用户的手机号码后4位
	 * @param id
	 * @param username
	 * @param password
	 * @return
	 */
	public ResponseResult resetPassword(Long[] ids) ;
	
	/**
	 * 修改账号状态
	 * @param id
	 * @param status 状态（1：激活，2：锁定）
	 * @return
	 */
	public Integer updateAccountStatus(Long[] id, Integer status) ;
	
	/**
	 * 根据帐号获取用户对象
	 * @param account 帐号（用户名/手机号码/邮箱地址）
	 * @return
	 */
	public User getAccount(String account) ;
	
	/**
	 * 根据用户名查询
	 * @param username
	 * @return
	 */
	public User gerUserByUserName(String username) ;
	
	/**
	 * 校验数据
	 * @param content 校验的数据
	 * @param type 校验的类型（1：用户名; 2：邮件地址; 3：手机号码）
	 * @return
	 */
	public Boolean checkData(String content, Integer type) ;
	
}
